/*
 * Author: Jeff Liu(jebberwocky@gmail.com)
 * Date: Sep 7, 2010 9:57:35 PM
 * 
 * License: MIT
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 
 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 
 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 
 * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
 * FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 
 * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION 
 * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 */
package org.gglgeo.ggl;

import java.io.UnsupportedEncodingException;

import org.gglgeo.core.Const;
import org.gglgeo.util.WebUtil;

public class GoogleGeoAPI  extends WebUtil {
	
	/**
	 * Send request.
	 *
	 * @param info the info
	 * @param format the format
	 * @return the string
	 * @throws UnsupportedEncodingException the unsupported encoding exception
	 */
	public static String SendRequest(GeoInfo info, String format) throws UnsupportedEncodingException{
		if(info == null)
			return null;
		String query = Const.GOOGLE_GEOCODING_API_URL+format;
		if(GeoLatLng.NOT_DEFINE_LAT_LNG.equals(info.getLatlng())|| info.getLatlng()==null){
			query += "?address=" + info.getAddress();
		}else{
			query +=  "?latlng=" + info.getLatlng().toString();
		}
		query += "&sensor=" + ((info.getCensor()) ? "true" : "false");
		return getRequest(query);
	}
  }